[VTD] Utilise the snoop control capability in shadow with VT-d code
authorKeir Fraser <keir.fraser@citrix.com>
Fri, 20 Feb 2009 11:11:40 +0000 (11:11 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Fri, 20 Feb 2009 11:11:40 +0000 (11:11 +0000)
commit3a3034d1015f9360068d8719e22afbe06a2bedbb
tree6d1bb015512d44a7af9df8145cba41c2f9410989
parentd3d0b89247f091dd6961c739c91a8a613cdffe65
[VTD] Utilise the snoop control capability in shadow with VT-d code

We compute the shadow PAT index in leaf page entries now as:
1) No VT-d assigned: let shadow PAT index as WB, handled already
in shadow code before.
2) direct assigned MMIO area: let shadow code compute the shadow
PAT with gMTRR=UC and gPAT value.
3) Snoop control enable: let shadow PAT index as WB.
4) Snoop control disable:  let shadow code compute the shadow
PAT with gMTRR and gPAT, handled already in shadow code before

Signed-off-by: Xin, Xiaohui <xiaohui.xin@intel.com>
xen/arch/x86/hvm/mtrr.c
xen/arch/x86/mm/shadow/multi.c
xen/include/asm-x86/mtrr.h